package top.zywork.query;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

/**
 * UserWithdrawCheckQuery查询对象类<br/>
 *
 * 创建于2019-12-27<br/>
 *
 * @author http://zywork.top 王振宇
 * @version 1.0
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = true)
public class UserWithdrawCheckQuery extends PageQuery {

    private static final long serialVersionUID = -9223372036768939552L;

    /*
	 * t_user表的字段对应的属性
	 */
	/**
	 * 用户编号
	 */
	private Long userId;
	/**
	 * 用户编号(最小值)
	 */
	private Long userIdMin;
	/**
	 * 用户编号(最大值)
	 */
	private Long userIdMax;
	/**
	 * 手机号
	 */
	private String userPhone;
	/**
	 * 用户邮箱
	 */
	private String userEmail;
	/*
	 * t_funds_withdraw表的字段对应的属性
	 */
	/**
	 * 提现编号
	 */
	private Long fundsWithdrawId;
	/**
	 * 提现编号(最小值)
	 */
	private Long fundsWithdrawIdMin;
	/**
	 * 提现编号(最大值)
	 */
	private Long fundsWithdrawIdMax;
	/**
	 * 交易编号
	 */
	private String fundsWithdrawTransactionNo;
	/**
	 * 提现方式
	 */
	private Byte fundsWithdrawWithdrawType;
	/**
	 * 提现方式(最小值)
	 */
	private Byte fundsWithdrawWithdrawTypeMin;
	/**
	 * 提现方式(最大值)
	 */
	private Byte fundsWithdrawWithdrawTypeMax;
	/**
	 * 发起提现的应用
	 */
	private Byte fundsWithdrawWithdrawClientApp;
	/**
	 * 发起提现的应用(最小值)
	 */
	private Byte fundsWithdrawWithdrawClientAppMin;
	/**
	 * 发起提现的应用(最大值)
	 */
	private Byte fundsWithdrawWithdrawClientAppMax;
	/**
	 * 提现金额（元）
	 */
	private BigDecimal fundsWithdrawAmount;
	/**
	 * 提现金额（元）(最小值)
	 */
	private BigDecimal fundsWithdrawAmountMin;
	/**
	 * 提现金额（元）(最大值)
	 */
	private BigDecimal fundsWithdrawAmountMax;
	/**
	 * 提现状态
	 */
	private Byte fundsWithdrawWithdrawStatus;
	/**
	 * 提现状态(最小值)
	 */
	private Byte fundsWithdrawWithdrawStatusMin;
	/**
	 * 提现状态(最大值)
	 */
	private Byte fundsWithdrawWithdrawStatusMax;
	/**
	 * 提现描述
	 */
	private String fundsWithdrawWithdrawDescription;
	/**
	 * 审核人编号
	 */
	private Long fundsWithdrawCheckedUserId;
	/**
	 * 审核人编号(最小值)
	 */
	private Long fundsWithdrawCheckedUserIdMin;
	/**
	 * 审核人编号(最大值)
	 */
	private Long fundsWithdrawCheckedUserIdMax;
	/**
	 * 审核时间
	 */
	private Date fundsWithdrawCheckedTime;
	/**
	 * 审核时间(最小值)
	 */
	private Date fundsWithdrawCheckedTimeMin;
	/**
	 * 审核时间(最大值)
	 */
	private Date fundsWithdrawCheckedTimeMax;
	/**
	 * 完成时间
	 */
	private Date fundsWithdrawCompleteTime;
	/**
	 * 完成时间(最小值)
	 */
	private Date fundsWithdrawCompleteTimeMin;
	/**
	 * 完成时间(最大值)
	 */
	private Date fundsWithdrawCompleteTimeMax;
	/**
	 * 版本号
	 */
	private Integer fundsWithdrawVersion;
	/**
	 * 版本号(最小值)
	 */
	private Integer fundsWithdrawVersionMin;
	/**
	 * 版本号(最大值)
	 */
	private Integer fundsWithdrawVersionMax;
	/**
	 * 创建时间
	 */
	private Date fundsWithdrawCreateTime;
	/**
	 * 创建时间(最小值)
	 */
	private Date fundsWithdrawCreateTimeMin;
	/**
	 * 创建时间(最大值)
	 */
	private Date fundsWithdrawCreateTimeMax;
	/**
	 * 更新时间
	 */
	private Date fundsWithdrawUpdateTime;
	/**
	 * 更新时间(最小值)
	 */
	private Date fundsWithdrawUpdateTimeMin;
	/**
	 * 更新时间(最大值)
	 */
	private Date fundsWithdrawUpdateTimeMax;
	/**
	 * 是否激活
	 */
	private Byte fundsWithdrawIsActive;
	/**
	 * 是否激活(最小值)
	 */
	private Byte fundsWithdrawIsActiveMin;
	/**
	 * 是否激活(最大值)
	 */
	private Byte fundsWithdrawIsActiveMax;
	/*
	 * t_user_bankcard表的字段对应的属性
	 */
	/**
	 * 银行卡编号
	 */
	private Long userBankcardId;
	/**
	 * 银行卡编号(最小值)
	 */
	private Long userBankcardIdMin;
	/**
	 * 银行卡编号(最大值)
	 */
	private Long userBankcardIdMax;
	/**
	 * 持卡人姓名
	 */
	private String userBankcardAccountName;
	/**
	 * 银行代码
	 */
	private String userBankcardBankCode;
	/**
	 * 银行名称
	 */
	private String userBankcardBankName;
	/**
	 * 银行卡号
	 */
	private String userBankcardBankcardNo;
	
	/**
	 * 多个编(只用于单表，关联表不适用)
	 */
	private Long[] ids;
}
